home *** CD-ROM | disk | FTP | other *** search
/ Apple II Magazines (DO) / Softdisk Magazette Volume 1, No. 10 (1982-06)(Softdisk)(Side B).zip / Softdisk Magazette Volume 1, No. 10 (1982-06)(Softdisk)(Side B).do / EXECUMATIC.bas < prev    next >
BASIC Source File  |  1996-12-24  |  5KB  |  149 lines

  1. 100  HOME 
  2. 200 D$ =  CHR$(4)
  3. 300 Q$ =  CHR$(34)
  4. 400 FILE = 0
  5. 500 S = 1
  6. 1000  DIM A$(1000)
  7. 1010  REM     GOSUB 8900: REM   ** INIT ARRAY NO LONGER USED **
  8. 1090  HTAB 15: INVERSE 
  9. 1100  PRINT "EXECUMATIC": NORMAL : PRINT 
  10. 1200  GOSUB 9500: REM  ** INTRO **:PRINT
  11. 1300  GOSUB 9000: REM  ** CMD LIST **
  12. 1350  REM *****HERE IS WHERE WORK GETS DONE ****
  13. 1400  FOR X = S TO 1000
  14. 1500  INPUT "CMD>";I$
  15. 1510  IF I$ = "VONN"  THEN V = 1:X = X -1: GOTO 2100
  16. 1520  IF I$ = "VOFF"  THEN V = 0:X = X -1: GOTO 2100
  17. 1530  IF I$ = "LOOK"  THEN  GOSUB 8000:X = X -1: GOTO 2100
  18. 1535  IF I$ = "HARD"  THEN  PR# 1: GOSUB 8000:X = X -1: GOTO 2100
  19. 1540  IF I$ = "DROP"  THEN  GOSUB 8500: GOTO 2100
  20. 1550  IF I$ = "OOPS"  THEN  GOSUB 8700: GOTO 2100
  21. 1600  IF I$ = "QUIT"  THEN  GOTO 5000
  22. 1610  IF I$ = "HELP"  THEN  GOSUB 9000:X = X -1: GOTO 2100
  23. 1612  IF I$ = "WAIT"  THEN  FOR A = 1 TO 2000: NEXT A:X = X -1: GOTO 2100
  24. 1615  IF I$ = "GRAB"  THEN  GOSUB 6000: GOTO 2100
  25. 1620  IF I$ = "DONE"  THEN  GOTO 4000
  26. 1630  IF I$ = "OVER"  THEN S = 1: GOTO 1400
  27. 1680  IF V = 0  THEN  GOTO 2050
  28. 1690  HTAB 20
  29. 1700  INPUT "VERIFY WITH 'Y'";V$
  30. 2000  IF V$ < >"Y"  THEN X = X -1: GOTO 1500
  31. 2050 A$(X) = I$
  32. 2100  NEXT X
  33. 4000  REM  ***** PUT EXEC TO DISK *****
  34. 4010  INPUT "RETURN TO EXECUMATIC (Y/N) ";R$
  35. 4020  IF R$ = "Y"  THEN A$(X) = "RUN EXECUMATIC ": GOTO 4100
  36. 4090 X = X -1
  37. 4100  INPUT "ENTER EXEC FILE NAME ";E$
  38. 4120  HOME 
  39. 4150  PRINT "WRITING EXEC FILE ";E$
  40. 4190  PRINT D$;"MON C,I,O"
  41. 4200  PRINT D$;"OPEN ";E$
  42. 4210  PRINT D$;"WRITE ";E$
  43. 4300  FOR Y = 1 TO X
  44. 4400  PRINT A$(Y)
  45. 4500  NEXT Y
  46. 4600  PRINT D$;"CLOSE ";E$
  47. 4700  VTAB 22: PRINT "REVIEW THEN PRESS ";: INVERSE : PRINT "RETURN";: NORMAL 
  48. 4710  INPUT R$
  49. 4800 FILE = 1
  50. 5000  HOME : REM ******END END END ******
  51. 5005  IF FILE = 0  THEN  GOTO 5100
  52. 5010  PRINT "WANT TO TRY ";E$;" (Y/N) ";
  53. 5015  INPUT T$
  54. 5020  IF T$ = "Y"  THEN  PRINT D$;"EXEC ";E$
  55. 5100  VTAB 8
  56. 5110  PRINT "PATRICK B. MONTANARO"
  57. 5120  PRINT "64 REED DRIVE"
  58. 5130  PRINT "WETHERSFIELD CT. 06109"
  59. 5135  PRINT 
  60. 5140  PRINT "PHONE (203) 529 1678"
  61. 5200  VTAB 22: END 
  62. 6000  REM  *** LOAD TEXT FROM DISK ***
  63. 6010  IF X = 1 GOTO 6100
  64. 6020  INPUT "WORK FILE NOT EMPTY - OVERLAY (Y/N) ";O$
  65. 6030  IF O$ = "N"  THEN X = X -1: RETURN 
  66. 6040  IF O$ < >"Y"  THEN  GOTO 6020
  67. 6050 X = 1
  68. 6100  INPUT "ENTER TEXT FILE NAME ";T$
  69. 6120  PRINT "READING TEXT FILE"
  70. 6200  PRINT D$;"NOMON C,I,O"
  71. 6210  PRINT D$;"OPEN ";T$
  72. 6220  PRINT D$;"READ ";T$
  73. 6221  ONERR  GOTO 6300
  74. 6225  FOR X = 1 TO 1000
  75. 6230  INPUT A$(X)
  76. 6250  NEXT X
  77. 6300  POKE 216,0
  78. 6310  PRINT "READING COMPLETE - CODE "; PEEK(222)
  79. 6320  ONERR  GOTO 6400
  80. 6350  PRINT D$;"CLOSE ";T$
  81. 6400  POKE 216,O
  82. 6410  PRINT "CLOSING FILE - CODE "; PEEK(222)
  83. 6420 S = X
  84. 6430  GOSUB 9000: REM  HELP
  85. 6440  GOSUB 8000: REM   LIST  
  86. 6900  GOTO 1400
  87. 7000  REM    *** DASHES ***
  88. 7005  FOR Y = 1 TO 38: HTAB Y: PRINT "-";: NEXT Y: HTAB 39: PRINT "-"
  89. 7010  RETURN 
  90. 8000  REM   ***
  91. 8050  REM  *** LIST ***
  92. 8075  GOSUB 7000
  93. 8080  IF X = 1  THEN  PRINT "NO INPUT ON FILE ": GOTO 8125
  94. 8100  FOR Y = 1 TO X -1
  95. 8110  PRINT Y;") ";A$(Y)
  96. 8120  NEXT Y
  97. 8125  GOSUB 7000
  98. 8128  PR# 0
  99. 8130  RETURN 
  100. 8500  REM  *** DELETE ***
  101. 8510  INPUT "ENTER # TO DELETE (0 EXITS) ";E
  102. 8511  IF E <0  THEN  PRINT "IF YOU BREAK IT YOU HAVE TO FIX IT !!": GOTO 8510
  103. 8512  IF E >X  THEN  PRINT "YOUR NUMBEHAT EXISTS": GOTO 8NUMBER IS GREATER THAN WHAT EXISTS": GOTO 8510
  104. 8513  IF E = 0  THEN X = X -1: GOTO 8560
  105. 8520  FOR Y = E TO X
  106. 8530 A$(Y) = A$(Y +1)
  107. 8540  NEXT Y
  108. 8550 X = X -2: REM  (ONE FOR CMD AND ONE FOR DEL)
  109. 8560  RETURN 
  110. 8700  REM  *** INSERT LINE ***
  111. 8710  INPUT "ENTER # TO INSERT AFTER (0 EXITS) ";E
  112. 8711  IF E <0  THEN  PRINT "CURIOSITY KILLED THE KA'AT !!": GOTO 8710
  113. 8712  IF E >X -1  THEN  PRINT "OUT OF RANGE - USE NORMAL MODE": GOTO 8710
  114. 8713  IF E = 0  THEN X = X -1: GOTO 8790
  115. 8720  FOR Y = X -1 TO E +1  STEP  -1
  116. 8730 A$(Y +1) = A$(Y)
  117. 8740  NEXT Y
  118. 8750  INPUT "INP>";I$
  119. 8760 A$(E +1) = I$
  120. 8790  RETURN 
  121. 8900  REM  ** INIT ARRAY **
  122. 8910  FOR Y = 1 TO 1000
  123. 8920 A$(Y) =  CHR$(6)
  124. 8930  NEXT Y
  125. 8990  RETURN 
  126. 9000  REM  ***** CMD LIST *****
  127. 9100  GOSUB 7000
  128. 9200  PRINT "'LOOK' - LIST WORK FILE"
  129. 9210  PRINT "'HARD' - PRINT WORK FILE"
  130. 9300  PRINT "'QUIT' - DO NOT SAVE ON DISK"
  131. 9305  PRINT "'VONN' - VERIFY MODE"
  132. 9306  PRINT "'VOFF' - END VERIFY"
  133. 9308  PRINT "'GRAB' - LOAD TEXT FILE FROM DISK"
  134. 9310  PRINT "'DONE' - WRITE WORK FILE TO DISK"
  135. 9312  PRINT "'OVER' - CLEAR WORK AREA AND RESTART"
  136. 9315  PRINT "'DROP' - DELETE A LINE"
  137. 9317  PRINT "'OOPS' - INSERT A LINE"
  138. 9320  PRINT "'";: INVERSE : PRINT "HELP";: NORMAL 
  139. 9330  PRINT "' - LIST THESE COMMANDS "
  140. 9390  GOSUB 7000
  141. 9399  RETURN 
  142. 9500  PRINT "EXECUMATIC WILL ALLOW YOU TO ENTER"
  143. 9510  PRINT "COMMANDS, INSTRUCTIONS, ETC. (WHATEVER "
  144. 9520  PRINT "CAN GO INTO AN EXEC FILE) FREEFORM AND"
  145. 9525  PRINT "WHEN DONE EXECUMATIC WILL TAKE YOUR "
  146. 9530  PRINT "INPUTS, BUILD A TEXT FILE AND ASK IF "
  147. 9540  PRINT "YOU WOULD LIKE TO TRY (EXEC) IT."
  148. 9550  PRINT "BASIC MAINTANENCE COMMANDS FOLLOW : "
  149. 9900  RETURN